import { PlayList, Songs } from "./MusicList";
import { MvData, Mvs, mvPlayUrl } from "./Mv";
import { Recommend } from "./Recommend";
import { UserProfile, UserSubcount } from "./User";

/* 对redux进行类型检测 */
export interface RootState {
    login: LoginState,
    user: UserState,
    musicList: MusicList,
    mv: MV
}

export interface LoginState {
    loginPic: string | undefined,
    hidden: boolean,
    key: string
}

export interface UserState {
    userAccount: UserProfile,
    userSubcount: UserSubcount
}

export interface MusicList {
    lyricHidden: boolean | undefined;
    playList: PlayList;
    resourceList: Recommend[];
    hiddenList: boolean | undefined;
    musicList: PlayList[],
    songs: Songs[],
    oldSongs: Songs[],
    songDetail: Songs,
    musicLyric: any[]
}

export interface MV {
    mvURL: MvData,
    mvPlayURL: mvPlayUrl,
    mvs: Mvs[]
}